package newcodercyclecontrol;

public class Exercise15 {

//    描述
//    变种水仙花数 - Lily Number：把任意的数字，从中间拆分成两个数字，比如1461 可以拆分成（1和461）,（14和61）,（146和1),如果所有拆分后的乘积之和等于自身，则是一个Lily Number。
//    例如：
//            655 = 6 * 55 + 65 * 5
//            1461 = 1*461 + 14*61 + 146*1
//    求出 5位数中的所有 Lily Number。
//    输入描述：
//    无
//    输出描述：
//    一行，5位数中的所有 Lily Number，每两个数之间间隔一个空格。
    public static void main(String[] args) {
        for (int num = 10000; num < 100000; num++) { //暴力遍历即可
            int sum = 0;//存储求和结果
            for (int i = 0; i < 5; i++) {
                int left = num / (int)Math.pow(10, i);//左半部分
                int right = num % (int)Math.pow(10, i);//右半部分
                sum += left * right;
            }
            if (sum == num) {
                System.out.print(num + " ");
            }
        }
    }
}
